#ifndef tokens_h
#define tokens_h
/* tokens.h -- List of labelled tokens and stuff
 *
 * Generated from: cl.g
 *
 * Terence Parr, Will Cohen, and Hank Dietz: 1989-2001
 * Purdue University Electrical Engineering
 * ANTLR Version 1.33MR33
 */
#define zzEOF_TOKEN 1
#define INPUTEND 1
#define PROGRAM 2
#define ENDPROGRAM 3
#define PROCEDURE 4
#define ENDPROCEDURE 5
#define FUNCTION 6
#define ENDFUNCTION 7
#define VAL 8
#define REF 9
#define RETURN 10
#define IF 11
#define THEN 12
#define ELSE 13
#define ENDIF 14
#define WHILE 15
#define DO 16
#define ENDWHILE 17
#define VARS 18
#define ENDVARS 19
#define STRUCT 20
#define ENDSTRUCT 21
#define INT 22
#define BOOL 23
#define ARRAY 24
#define OF 25
#define READ 26
#define WRITE 27
#define WRITELN 28
#define AND 29
#define OR 30
#define EQUAL 31
#define LESS 32
#define GREATER 33
#define PLUS 34
#define MINUS 35
#define TIMES 36
#define DIVIDED 37
#define NOT 38
#define OPENPAR 39
#define CLOSEPAR 40
#define OPENBR 41
#define CLOSEBR 42
#define ASIG 43
#define VECPROD 44
#define VECCONCAT 45
#define DOT 46
#define COMMA 47
#define TRUECONST 48
#define FALSECONST 49
#define IDENT 50
#define INTCONST 51
#define STRING 52
#define COMMENT 53
#define WHITESPACE 54
#define NEWLINE 55
#define LEXICALERROR 56

#ifdef __USE_PROTOS
void program(AST**_root);
#else
extern void program();
#endif

#ifdef __USE_PROTOS
void dec_vars(AST**_root);
#else
extern void dec_vars();
#endif

#ifdef __USE_PROTOS
void l_dec_vars(AST**_root);
#else
extern void l_dec_vars();
#endif

#ifdef __USE_PROTOS
void dec_var(AST**_root);
#else
extern void dec_var();
#endif

#ifdef __USE_PROTOS
void constr_type(AST**_root);
#else
extern void constr_type();
#endif

#ifdef __USE_PROTOS
void field(AST**_root);
#else
extern void field();
#endif

#ifdef __USE_PROTOS
void l_dec_blocs(AST**_root);
#else
extern void l_dec_blocs();
#endif

#ifdef __USE_PROTOS
void dec_bloc(AST**_root);
#else
extern void dec_bloc();
#endif

#ifdef __USE_PROTOS
void dec_proc(AST**_root);
#else
extern void dec_proc();
#endif

#ifdef __USE_PROTOS
void header_proc(AST**_root);
#else
extern void header_proc();
#endif

#ifdef __USE_PROTOS
void dec_func(AST**_root);
#else
extern void dec_func();
#endif

#ifdef __USE_PROTOS
void header_func(AST**_root);
#else
extern void header_func();
#endif

#ifdef __USE_PROTOS
void l_params(AST**_root);
#else
extern void l_params();
#endif

#ifdef __USE_PROTOS
void dec_param(AST**_root);
#else
extern void dec_param();
#endif

#ifdef __USE_PROTOS
void dec_return(AST**_root);
#else
extern void dec_return();
#endif

#ifdef __USE_PROTOS
void do_return(AST**_root);
#else
extern void do_return();
#endif

#ifdef __USE_PROTOS
void l_instrs(AST**_root);
#else
extern void l_instrs();
#endif

#ifdef __USE_PROTOS
void instruction(AST**_root);
#else
extern void instruction();
#endif

#ifdef __USE_PROTOS
void l_args(AST**_root);
#else
extern void l_args();
#endif

#ifdef __USE_PROTOS
void expression(AST**_root);
#else
extern void expression();
#endif

#ifdef __USE_PROTOS
void expression_and_priority(AST**_root);
#else
extern void expression_and_priority();
#endif

#ifdef __USE_PROTOS
void expression_equal_priority(AST**_root);
#else
extern void expression_equal_priority();
#endif

#ifdef __USE_PROTOS
void expression_concat_priority(AST**_root);
#else
extern void expression_concat_priority();
#endif

#ifdef __USE_PROTOS
void expression_plus_priority(AST**_root);
#else
extern void expression_plus_priority();
#endif

#ifdef __USE_PROTOS
void expression_times_priority(AST**_root);
#else
extern void expression_times_priority();
#endif

#ifdef __USE_PROTOS
void expression_not_priority(AST**_root);
#else
extern void expression_not_priority();
#endif

#ifdef __USE_PROTOS
void expression_value(AST**_root);
#else
extern void expression_value();
#endif

#endif
extern SetWordType zzerr1[];
extern SetWordType zzerr2[];
extern SetWordType setwd1[];
extern SetWordType zzerr3[];
extern SetWordType zzerr4[];
extern SetWordType zzerr5[];
extern SetWordType setwd2[];
extern SetWordType zzerr6[];
extern SetWordType zzerr7[];
extern SetWordType zzerr8[];
extern SetWordType zzerr9[];
extern SetWordType setwd3[];
extern SetWordType zzerr10[];
extern SetWordType zzerr11[];
extern SetWordType zzerr12[];
extern SetWordType setwd4[];
extern SetWordType zzerr13[];
extern SetWordType zzerr14[];
extern SetWordType zzerr15[];
extern SetWordType zzerr16[];
extern SetWordType setwd5[];
extern SetWordType zzerr17[];
extern SetWordType zzerr18[];
extern SetWordType setwd6[];
